package com.csii.branch.service;

import com.csii.branch.mapper.entity.CdBranchLicenseInfo;
import com.csii.branch.service.dto.CdBranchLicenseInfoDTO;
import com.csii.branch.mapper.entity.CdBranchPlaceInfo;
import com.csii.branch.service.dto.CdBranchPlaceInfoDTO;
import com.csii.branch.mapper.entity.CdBranchDeviceInfo;
import com.csii.branch.service.dto.CdBranchDeviceInfoDTO;
import com.csii.branch.mapper.entity.CdBranchSupervisorInfo;
import com.csii.branch.service.dto.CdBranchSupervisorInfoDTO;
import com.csii.branch.mapper.entity.CdBranchAroundInfo;
import com.csii.branch.service.dto.CdBranchAroundInfoDTO;
import com.csii.branch.mapper.entity.CdBranchBaseInfo;
import com.csii.branch.service.dto.CdBranchBaseInfoDTO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.csii.core.exception.AppException;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * @Description: 网点基本信息
 * @Author: power-stdio
 * @Date:   2020-12-22
 * @Version: V1.0
 */
public interface ICdBranchBaseInfoService extends IService<CdBranchBaseInfo> {

	/**根节点父ID的值*/
	public static final String ROOT_PID_VALUE = "0";

	/**树节点有子节点状态值*/
	public static final String HASCHILD = "1";

	/**树节点无子节点状态值*/
	public static final String NOCHILD = "0";

	/**
	 * 添加一对多
	 * 
	 */
	public void saveMain(CdBranchBaseInfoDTO cdBranchBaseInfoDTO, List<CdBranchLicenseInfoDTO> cdBranchLicenseInfoDTOList, List<CdBranchPlaceInfoDTO> cdBranchPlaceInfoDTOList, List<CdBranchDeviceInfoDTO> cdBranchDeviceInfoDTOList, List<CdBranchSupervisorInfoDTO> cdBranchSupervisorInfoDTOList, List<CdBranchAroundInfoDTO> cdBranchAroundInfoDTOList) ;
	
	/**
	 * 修改一对多
	 * 
	 */
	public void updateMain(CdBranchBaseInfoDTO cdBranchBaseInfoDTO, List<CdBranchLicenseInfoDTO> cdBranchLicenseInfoDTOList, List<CdBranchPlaceInfoDTO> cdBranchPlaceInfoDTOList, List<CdBranchDeviceInfoDTO> cdBranchDeviceInfoDTOList, List<CdBranchSupervisorInfoDTO> cdBranchSupervisorInfoDTOList, List<CdBranchAroundInfoDTO> cdBranchAroundInfoDTOList);
	
	/**
	 * 删除一对多
	 */
	public void delMain(String id);
	
	/**
	 * 批量删除一对多
	 */
	public void delBatchMain(Collection<? extends Serializable> idList);
	
}
